/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package sisvoto.modeloTablas;

import java.util.ArrayList;
import java.util.List;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JTable;
import javax.swing.table.AbstractTableModel;
import sisvoto.modelo.Anio_Paralelo;

/**
 *
 * @author Dianita
 */
public class ModelTableTipoAnio extends AbstractTableModel{
    private List<Anio_Paralelo> lista = new ArrayList<>();
    private Anio_Paralelo seleccionado;

    public ModelTableTipoAnio(List<Anio_Paralelo> lista) {
        this.lista = lista;
    }

    @Override
    public int getRowCount() {
        return lista.size();
    }

    @Override
    public int getColumnCount() {
        return 3;
    }

    @Override
    public Object getValueAt(int fila, int columna) {
        seleccionado = lista.get(fila);

        switch (columna) {
            case 0:
                return seleccionado.getAnio().getNombre();
            case 1:
                return seleccionado.getParalelo().getNombre();
            case 2:
                return new JButton(new ImageIcon(getClass().getResource("/sisvoto/Recursos/delete.png")));
            default:
                return null;
        }
    }
    @Override
    public Class getColumnClass(int columnIndex) {
        Class clazz = Object.class;
        Object aux = getValueAt(0, columnIndex);
        if (aux != null) {
            clazz = aux.getClass();
        }

        return clazz;
    }

    @Override
    public String getColumnName(int columna) {
        switch (columna) {
            case 0:
                return "Año";
            case 1:
                return "Paralelo";
            case 2:
                return "Eliminar";
            default:
                return null;
        }
    }

    @Override
    public boolean isCellEditable(int rowIndex, int columnIndex) {
        // Permitimos editar todas las celdas de la tabla
        if (columnIndex == 2) {
            return true;
        }else{
            return false;
        }

    }

    public void tamanioColumnas(JTable tabla) {
        tabla.getColumnModel().getColumn(0).setMaxWidth(250);
        tabla.getColumnModel().getColumn(1).setMaxWidth(80);
        tabla.getColumnModel().getColumn(2).setMaxWidth(70);
    }
    
    public void tamanioFilas(JTable tabla) {
        tabla.setRowHeight(23);
    }
    
}
